package com.shijie99.paper.manage.pojo;

import java.util.ArrayList;
import java.util.List;

public class PmPolicyInfoExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PmPolicyInfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andFlighttypeIsNull() {
            addCriterion("flighttype is null");
            return (Criteria) this;
        }

        public Criteria andFlighttypeIsNotNull() {
            addCriterion("flighttype is not null");
            return (Criteria) this;
        }

        public Criteria andFlighttypeEqualTo(String value) {
            addCriterion("flighttype =", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeNotEqualTo(String value) {
            addCriterion("flighttype <>", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeGreaterThan(String value) {
            addCriterion("flighttype >", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeGreaterThanOrEqualTo(String value) {
            addCriterion("flighttype >=", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeLessThan(String value) {
            addCriterion("flighttype <", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeLessThanOrEqualTo(String value) {
            addCriterion("flighttype <=", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeLike(String value) {
            addCriterion("flighttype like", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeNotLike(String value) {
            addCriterion("flighttype not like", value, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeIn(List<String> values) {
            addCriterion("flighttype in", values, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeNotIn(List<String> values) {
            addCriterion("flighttype not in", values, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeBetween(String value1, String value2) {
            addCriterion("flighttype between", value1, value2, "flighttype");
            return (Criteria) this;
        }

        public Criteria andFlighttypeNotBetween(String value1, String value2) {
            addCriterion("flighttype not between", value1, value2, "flighttype");
            return (Criteria) this;
        }

        public Criteria andIpccIsNull() {
            addCriterion("ipcc is null");
            return (Criteria) this;
        }

        public Criteria andIpccIsNotNull() {
            addCriterion("ipcc is not null");
            return (Criteria) this;
        }

        public Criteria andIpccEqualTo(String value) {
            addCriterion("ipcc =", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccNotEqualTo(String value) {
            addCriterion("ipcc <>", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccGreaterThan(String value) {
            addCriterion("ipcc >", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccGreaterThanOrEqualTo(String value) {
            addCriterion("ipcc >=", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccLessThan(String value) {
            addCriterion("ipcc <", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccLessThanOrEqualTo(String value) {
            addCriterion("ipcc <=", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccLike(String value) {
            addCriterion("ipcc like", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccNotLike(String value) {
            addCriterion("ipcc not like", value, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccIn(List<String> values) {
            addCriterion("ipcc in", values, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccNotIn(List<String> values) {
            addCriterion("ipcc not in", values, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccBetween(String value1, String value2) {
            addCriterion("ipcc between", value1, value2, "ipcc");
            return (Criteria) this;
        }

        public Criteria andIpccNotBetween(String value1, String value2) {
            addCriterion("ipcc not between", value1, value2, "ipcc");
            return (Criteria) this;
        }

        public Criteria andHkcodeIsNull() {
            addCriterion("hkcode is null");
            return (Criteria) this;
        }

        public Criteria andHkcodeIsNotNull() {
            addCriterion("hkcode is not null");
            return (Criteria) this;
        }

        public Criteria andHkcodeEqualTo(String value) {
            addCriterion("hkcode =", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeNotEqualTo(String value) {
            addCriterion("hkcode <>", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeGreaterThan(String value) {
            addCriterion("hkcode >", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeGreaterThanOrEqualTo(String value) {
            addCriterion("hkcode >=", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeLessThan(String value) {
            addCriterion("hkcode <", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeLessThanOrEqualTo(String value) {
            addCriterion("hkcode <=", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeLike(String value) {
            addCriterion("hkcode like", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeNotLike(String value) {
            addCriterion("hkcode not like", value, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeIn(List<String> values) {
            addCriterion("hkcode in", values, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeNotIn(List<String> values) {
            addCriterion("hkcode not in", values, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeBetween(String value1, String value2) {
            addCriterion("hkcode between", value1, value2, "hkcode");
            return (Criteria) this;
        }

        public Criteria andHkcodeNotBetween(String value1, String value2) {
            addCriterion("hkcode not between", value1, value2, "hkcode");
            return (Criteria) this;
        }

        public Criteria andFromcityIsNull() {
            addCriterion("fromcity is null");
            return (Criteria) this;
        }

        public Criteria andFromcityIsNotNull() {
            addCriterion("fromcity is not null");
            return (Criteria) this;
        }

        public Criteria andFromcityEqualTo(String value) {
            addCriterion("fromcity =", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityNotEqualTo(String value) {
            addCriterion("fromcity <>", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityGreaterThan(String value) {
            addCriterion("fromcity >", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityGreaterThanOrEqualTo(String value) {
            addCriterion("fromcity >=", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityLessThan(String value) {
            addCriterion("fromcity <", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityLessThanOrEqualTo(String value) {
            addCriterion("fromcity <=", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityLike(String value) {
            addCriterion("fromcity like", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityNotLike(String value) {
            addCriterion("fromcity not like", value, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityIn(List<String> values) {
            addCriterion("fromcity in", values, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityNotIn(List<String> values) {
            addCriterion("fromcity not in", values, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityBetween(String value1, String value2) {
            addCriterion("fromcity between", value1, value2, "fromcity");
            return (Criteria) this;
        }

        public Criteria andFromcityNotBetween(String value1, String value2) {
            addCriterion("fromcity not between", value1, value2, "fromcity");
            return (Criteria) this;
        }

        public Criteria andTocityIsNull() {
            addCriterion("tocity is null");
            return (Criteria) this;
        }

        public Criteria andTocityIsNotNull() {
            addCriterion("tocity is not null");
            return (Criteria) this;
        }

        public Criteria andTocityEqualTo(String value) {
            addCriterion("tocity =", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityNotEqualTo(String value) {
            addCriterion("tocity <>", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityGreaterThan(String value) {
            addCriterion("tocity >", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityGreaterThanOrEqualTo(String value) {
            addCriterion("tocity >=", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityLessThan(String value) {
            addCriterion("tocity <", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityLessThanOrEqualTo(String value) {
            addCriterion("tocity <=", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityLike(String value) {
            addCriterion("tocity like", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityNotLike(String value) {
            addCriterion("tocity not like", value, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityIn(List<String> values) {
            addCriterion("tocity in", values, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityNotIn(List<String> values) {
            addCriterion("tocity not in", values, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityBetween(String value1, String value2) {
            addCriterion("tocity between", value1, value2, "tocity");
            return (Criteria) this;
        }

        public Criteria andTocityNotBetween(String value1, String value2) {
            addCriterion("tocity not between", value1, value2, "tocity");
            return (Criteria) this;
        }

        public Criteria andRouteIsNull() {
            addCriterion("route is null");
            return (Criteria) this;
        }

        public Criteria andRouteIsNotNull() {
            addCriterion("route is not null");
            return (Criteria) this;
        }

        public Criteria andRouteEqualTo(String value) {
            addCriterion("route =", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteNotEqualTo(String value) {
            addCriterion("route <>", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteGreaterThan(String value) {
            addCriterion("route >", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteGreaterThanOrEqualTo(String value) {
            addCriterion("route >=", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteLessThan(String value) {
            addCriterion("route <", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteLessThanOrEqualTo(String value) {
            addCriterion("route <=", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteLike(String value) {
            addCriterion("route like", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteNotLike(String value) {
            addCriterion("route not like", value, "route");
            return (Criteria) this;
        }

        public Criteria andRouteIn(List<String> values) {
            addCriterion("route in", values, "route");
            return (Criteria) this;
        }

        public Criteria andRouteNotIn(List<String> values) {
            addCriterion("route not in", values, "route");
            return (Criteria) this;
        }

        public Criteria andRouteBetween(String value1, String value2) {
            addCriterion("route between", value1, value2, "route");
            return (Criteria) this;
        }

        public Criteria andRouteNotBetween(String value1, String value2) {
            addCriterion("route not between", value1, value2, "route");
            return (Criteria) this;
        }

        public Criteria andCabinIsNull() {
            addCriterion("cabin is null");
            return (Criteria) this;
        }

        public Criteria andCabinIsNotNull() {
            addCriterion("cabin is not null");
            return (Criteria) this;
        }

        public Criteria andCabinEqualTo(String value) {
            addCriterion("cabin =", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinNotEqualTo(String value) {
            addCriterion("cabin <>", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinGreaterThan(String value) {
            addCriterion("cabin >", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinGreaterThanOrEqualTo(String value) {
            addCriterion("cabin >=", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinLessThan(String value) {
            addCriterion("cabin <", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinLessThanOrEqualTo(String value) {
            addCriterion("cabin <=", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinLike(String value) {
            addCriterion("cabin like", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinNotLike(String value) {
            addCriterion("cabin not like", value, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinIn(List<String> values) {
            addCriterion("cabin in", values, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinNotIn(List<String> values) {
            addCriterion("cabin not in", values, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinBetween(String value1, String value2) {
            addCriterion("cabin between", value1, value2, "cabin");
            return (Criteria) this;
        }

        public Criteria andCabinNotBetween(String value1, String value2) {
            addCriterion("cabin not between", value1, value2, "cabin");
            return (Criteria) this;
        }

        public Criteria andSuittypeIsNull() {
            addCriterion("suittype is null");
            return (Criteria) this;
        }

        public Criteria andSuittypeIsNotNull() {
            addCriterion("suittype is not null");
            return (Criteria) this;
        }

        public Criteria andSuittypeEqualTo(Integer value) {
            addCriterion("suittype =", value, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeNotEqualTo(Integer value) {
            addCriterion("suittype <>", value, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeGreaterThan(Integer value) {
            addCriterion("suittype >", value, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("suittype >=", value, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeLessThan(Integer value) {
            addCriterion("suittype <", value, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeLessThanOrEqualTo(Integer value) {
            addCriterion("suittype <=", value, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeIn(List<Integer> values) {
            addCriterion("suittype in", values, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeNotIn(List<Integer> values) {
            addCriterion("suittype not in", values, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeBetween(Integer value1, Integer value2) {
            addCriterion("suittype between", value1, value2, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuittypeNotBetween(Integer value1, Integer value2) {
            addCriterion("suittype not between", value1, value2, "suittype");
            return (Criteria) this;
        }

        public Criteria andSuitflightsIsNull() {
            addCriterion("suitflights is null");
            return (Criteria) this;
        }

        public Criteria andSuitflightsIsNotNull() {
            addCriterion("suitflights is not null");
            return (Criteria) this;
        }

        public Criteria andSuitflightsEqualTo(String value) {
            addCriterion("suitflights =", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsNotEqualTo(String value) {
            addCriterion("suitflights <>", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsGreaterThan(String value) {
            addCriterion("suitflights >", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsGreaterThanOrEqualTo(String value) {
            addCriterion("suitflights >=", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsLessThan(String value) {
            addCriterion("suitflights <", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsLessThanOrEqualTo(String value) {
            addCriterion("suitflights <=", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsLike(String value) {
            addCriterion("suitflights like", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsNotLike(String value) {
            addCriterion("suitflights not like", value, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsIn(List<String> values) {
            addCriterion("suitflights in", values, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsNotIn(List<String> values) {
            addCriterion("suitflights not in", values, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsBetween(String value1, String value2) {
            addCriterion("suitflights between", value1, value2, "suitflights");
            return (Criteria) this;
        }

        public Criteria andSuitflightsNotBetween(String value1, String value2) {
            addCriterion("suitflights not between", value1, value2, "suitflights");
            return (Criteria) this;
        }

        public Criteria andFarebasisIsNull() {
            addCriterion("farebasis is null");
            return (Criteria) this;
        }

        public Criteria andFarebasisIsNotNull() {
            addCriterion("farebasis is not null");
            return (Criteria) this;
        }

        public Criteria andFarebasisEqualTo(String value) {
            addCriterion("farebasis =", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisNotEqualTo(String value) {
            addCriterion("farebasis <>", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisGreaterThan(String value) {
            addCriterion("farebasis >", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisGreaterThanOrEqualTo(String value) {
            addCriterion("farebasis >=", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisLessThan(String value) {
            addCriterion("farebasis <", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisLessThanOrEqualTo(String value) {
            addCriterion("farebasis <=", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisLike(String value) {
            addCriterion("farebasis like", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisNotLike(String value) {
            addCriterion("farebasis not like", value, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisIn(List<String> values) {
            addCriterion("farebasis in", values, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisNotIn(List<String> values) {
            addCriterion("farebasis not in", values, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisBetween(String value1, String value2) {
            addCriterion("farebasis between", value1, value2, "farebasis");
            return (Criteria) this;
        }

        public Criteria andFarebasisNotBetween(String value1, String value2) {
            addCriterion("farebasis not between", value1, value2, "farebasis");
            return (Criteria) this;
        }

        public Criteria andCurrencyIsNull() {
            addCriterion("currency is null");
            return (Criteria) this;
        }

        public Criteria andCurrencyIsNotNull() {
            addCriterion("currency is not null");
            return (Criteria) this;
        }

        public Criteria andCurrencyEqualTo(String value) {
            addCriterion("currency =", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotEqualTo(String value) {
            addCriterion("currency <>", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyGreaterThan(String value) {
            addCriterion("currency >", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyGreaterThanOrEqualTo(String value) {
            addCriterion("currency >=", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyLessThan(String value) {
            addCriterion("currency <", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyLessThanOrEqualTo(String value) {
            addCriterion("currency <=", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyLike(String value) {
            addCriterion("currency like", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotLike(String value) {
            addCriterion("currency not like", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyIn(List<String> values) {
            addCriterion("currency in", values, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotIn(List<String> values) {
            addCriterion("currency not in", values, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyBetween(String value1, String value2) {
            addCriterion("currency between", value1, value2, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotBetween(String value1, String value2) {
            addCriterion("currency not between", value1, value2, "currency");
            return (Criteria) this;
        }

        public Criteria andSalepriceIsNull() {
            addCriterion("saleprice is null");
            return (Criteria) this;
        }

        public Criteria andSalepriceIsNotNull() {
            addCriterion("saleprice is not null");
            return (Criteria) this;
        }

        public Criteria andSalepriceEqualTo(Integer value) {
            addCriterion("saleprice =", value, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceNotEqualTo(Integer value) {
            addCriterion("saleprice <>", value, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceGreaterThan(Integer value) {
            addCriterion("saleprice >", value, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceGreaterThanOrEqualTo(Integer value) {
            addCriterion("saleprice >=", value, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceLessThan(Integer value) {
            addCriterion("saleprice <", value, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceLessThanOrEqualTo(Integer value) {
            addCriterion("saleprice <=", value, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceIn(List<Integer> values) {
            addCriterion("saleprice in", values, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceNotIn(List<Integer> values) {
            addCriterion("saleprice not in", values, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceBetween(Integer value1, Integer value2) {
            addCriterion("saleprice between", value1, value2, "saleprice");
            return (Criteria) this;
        }

        public Criteria andSalepriceNotBetween(Integer value1, Integer value2) {
            addCriterion("saleprice not between", value1, value2, "saleprice");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}